草庐IT

java - 测试 getJSONArray 是否为 null

全部标签

ruby-on-rails - Rails - 使用功能测试测试 JSON API

我只是有一个简单的问题,但我找不到任何答案。我的ruby​​onrails3.2.2应用程序有一个带有设计session身份验证的JSONAPI。我的问题是:如何使用功能或集成测试来测试此API-是否有处理session的方法?我没有前端,只有一个可以执行GET操作的API。邮政。放。并使用JSON正文删除。哪个是测试此自动化的最佳方法?示例创建新用户发布www.exmaple.com/users{"user":{"email":"test@example.com","password":"mypass"}} 最佳答案 功能测试很容

ruby-on-rails - Corey Haines 在 GoGaRuCo 2011 上使用了哪些测试工具和方法?

在thisvideofromGoGaRuCo2011,CoreyHaines展示了一些使Rails测试套件更快的技术。我总结如下:将尽可能多的代码放在Rails应用之外,放入其他模块和类中单独测试它们,无需加载Rails的开销在您的Rails应用程序中使用它们不过,有几件事我不明白。他交替使用rspec和spn或spna运行测试(例如,大约在3:50)。spn是一个众所周知的工具吗?在他对非Rails类和模块的测试中,他包含了被测试的模块或类,但我没有看到他包含任何类似spec_helper的东西。他如何获得Rspec? 最佳答案

ruby - RSpec 类变量测试

我正在使用RSpec测试gem中的类级实例变量(和setter)。我需要测试以下内容:如果从未使用过setter,则会提供正确的默认值。变量可以通过setter成功更新。显然这里存在运行顺序问题。如果我使用setter更改值,我就会忘记默认值是什么。我可以在setter测试之前将它保存到一个变量,然后在最后重置该值,但只有当所有setter测试都遵循相同的做法时,这才能保护我。测试变量默认值的最佳方法是什么?这是一个简单的例子:classFooclass 最佳答案 classFooDEFAULT_ITEMS=%w(foobarbaz

ruby - 确定变量是否是值列表中的任何一个的最短/最惯用的方法是什么?

这似乎是一个非常简单的问题,但是用Ruby重写它的最短/最惯用的方法是什么?ifvariable==:aorvariable==:borvariable==:corvariable==:d#etc.我看到了这个解决方案:if[:a,:b,:c,:d].include?variable但这在功能上并不总是等价的-我相信Array#include?实际上是在查看变量对象是否包含在列表中;它没有考虑到对象可以使用def==(other)实现自己的相等性测试。正如下面有帮助的评论员所说,这种解释是不正确的。include?确实使用==但它使用数组中项目的==方法。在我的示例中,它是符号,而不是

Ruby:在代码中使用 rand() 但编写测试来验证概率

我有一些代码可以根据加权随机数提供内容。权重越大的东西越有可能被随机选择。现在作为一名优秀的ruby​​ist,我当然想用测试覆盖所有这些代码。我想测试是否根据正确的概率获取了东西。那么我该如何测试呢?为应该是随机的东西创建测试使得很难比较实际与预期。我有一些想法,以及为什么它们不会很好地工作:在我的测试中stubKernel.rand以返回固定值。这很酷,但是rand()被调用了多次,我不确定我是否可以通过足够的控制来装备它来测试我需要的东西。多次获取随机项目,并将实际比率与预期比率进行比较。但除非我可以无限次地运行它,否则这永远不会完美,并且如果我在RNG中运气不佳,可能会间歇性地

ruby - 是否可以在 Ruby 中定义带有可选参数的 block ?

我正在尝试动态定义调用另一个采用选项参数的函数的函数:classMyClass["hour","minute","second"].eachdo|interval|define_method"get_#{interval}"do|args|some_helper(interval,args)endenddefsome_helper(interval,options={})#Dosomething,withargumentsendend我希望能够以这两种方式调用MyClass的不同方法(有和没有可选参数):mc=MyClass.newmc.get_minute(:first_option

ruby - Lisp - 是否适合网络编程/应用程序(交互式)? ruby 的方式是? php的方式是?

Lisp是否适合Web编程/应用程序(交互式),就像ruby​​和php一样?需要考虑的事情是:易于使用可部署性难度(尤其是对于编程初学者而言)(编辑)在阅读PaulGraham'sessay之后,我特别提到了CommonLisp.将是我的第一门编程语言。在这方面。这样做合适吗?我听说Clojure的宏功能不如CommonLisp的强大,这就是我尝试学习Clojure的原因。它教授编程并且非常强大。 最佳答案 Lisp是一个语系,而不是单一的语言。为了稍微回答您的问题,是的,存在用于各种Lisp方言的Web框架,例如用于Common

ruby - 如何使用 RSpec 编写循环遍历一系列值的测试?

我有一个名为“FizzBu​​zz”的游戏的非常简单的Ruby实现(即给定输入数字,如果数字是3的倍数,则返回“Fizz”,如果是5的倍数,则返回“Buzz”,如果是多个,则返回“FizzBu​​zz”如果它不符合任何先前的条件,则两者和原始数字):classFizzBuzzdefanswer(number)multiple3=number%3==0multiple5=number%5==0returncasewhen(multiple3andmultiple5)then"FizzBuzz"whenmultiple3then"Fizz"whenmultiple5then"Buzz"el

ruby-on-rails - 保存图表失败!验证 Graphviz 是否已安装并位于您的路径中,或使用 filetype=dot

当我运行rakedb:migrate时出现这个错误rakeaborted!Savingdiagramfailed!VerifythatGraphvizisinstalledandinyourpath,orusefiletype=dot.完整日志:rakedb:migrateLoadingapplicationenvironment...LoadingcodeinsearchofActiveRecordmodels...GeneratingEntity-RelationshipDiagramfor20models...rakeaborted!Savingdiagramfailed!Ver

ruby - 检查数字是否为 NaN

我正在尝试检查我的RubyonRails应用程序中的变量是否等于NaN。我看到了这个answer,但这并不是很有用,因为在我的代码中,如果变量为NaN,我想返回0,否则返回值:return(average.nan?0:average.round(1))问题是如果数字不是NaN我会得到这个错误:NoMethodError:undefinedmethod`nan?'for10:Fixnum我无法检查该数字是否为Float实例,因为它在两种情况下都是(可能,我正在计算平均值)。我能做什么?只有我觉得奇怪的是,检查变量是否等于NaN的函数只对NaN对象可用? 最佳答